package user_mgt

import (
	"go.uber.org/zap"
	"internal_training_be/jwt"
	"net/http"
)

const (
	schema          = "s_training_system"
	adminTable      = "t_admin"
	employeeTable   = "t_employee"
	courseTable     = "t_course"
	enrollmentTable = "t_enrollment"
	feedbackTable   = "t_feedback"
)

var (
	logger      = zap.L().Sugar()
	jwtEmployee = jwt.NewServiceForEmployee()
	jwtAdmin    = jwt.NewServiceForAdmin()
)

type Middlewares interface {
	AuthMiddleware(next http.Handler) http.Handler
}

type EmployeeImpl struct {
}

type AdminImpl struct {
}

// LoginRequest 请求结构体
type LoginRequest struct {
	Username string `json:"username"`
	Password string `json:"password"`
}

// LoginResponse 响应结构体
type LoginResponse struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
}

// CourseInfo 课程信息
type CourseInfo struct {
	Name        string `json:"name"`
	Description string `json:"description"`
	Duration    string `json:"duration"`
	Status      int    `json:"status"`
}

// EmployeeInfoResponse 员工个人信息
type EmployeeInfoResponse struct {
	Success bool   `json:"success"`
	Message string `json:"message"`
	ID      string `json:"id"`
	Name    string `json:"name"`
}
